// 引入头文件：自定义窗口类的声明
#include "QCommandLinkButtonPros.h"

// 引入桌面服务类（可用于打开网页、文件等）
#include <QDesktopServices>

// 引入 QUrl 类（用于构造和解析 URL 地址）
#include <QUrl>

// 类 MainWindowQCommandLinkButtonPros 的构造函数
// 参数 parent：父窗口指针，默认为空指针，表示没有父窗口
MainWindowQCommandLinkButtonPros::MainWindowQCommandLinkButtonPros(QWidget *parent)
        : QMainWindow(parent)  // 调用父类构造函数
{
    // 设置主窗口的位置和大小（x=400, y=300, 宽=500, 高=300）
    this->setGeometry(400, 300, 500, 300);

    // 设置主窗口的背景颜色为半透明橙色（红=255，绿=100，蓝=0，透明度=100%）
    this->setStyleSheet("QMainWindow {background-color:rgba(255,100,0,100%);}");


    // 创建一个 QCommandLinkButton 按钮对象（名称：clb）
    // 参数解释：
    // "testclb"：按钮的主标题
    // "clicked testclb"：按钮的副标题
    // this：设置按钮的父对象为当前窗口
    clb = new QCommandLinkButton("testclb", "clicked testclb", this);

    // 设置按钮的位置和大小（x=50, y=100, 宽=250, 高=60）
    clb->setGeometry(50, 100, 250, 60);

    // 连接按钮的 clicked() 信号与自定义槽函数 clbClicked()
    connect(clb, SIGNAL(clicked()), this, SLOT(clbClicked()));
}

// 析构函数（无特殊操作）
MainWindowQCommandLinkButtonPros::~MainWindowQCommandLinkButtonPros()
{
}

// 槽函数：clbClicked()
// 当按钮被点击时执行该函数
void MainWindowQCommandLinkButtonPros::clbClicked()
{
    // 使用桌面服务打开指定的网址
    QDesktopServices::openUrl(QUrl("https://www.sina.com.cn/"));
}
